package com.cxs.service;

import com.cxs.dto.AddCashierProDTO;
import com.cxs.pojo.Cashier;
import com.cxs.vo.Result;
import com.github.pagehelper.PageInfo;

/*
 * @Author:cxs
 * @Date:2021/10/20  20:33
 * @Version 1.0
 * @Motto:放下杂念,只为迎接明天更好的自己
 * */
public interface CashierService {
    /**
     * 检查病人是否有为缴清的药品
     * @param reportId
     * @return
     */
    Result checkHasNoCh(Integer reportId);

    /**
     * 检查病人是否有为缴清的项目
     * @param reportId
     * @return
     */
    Result checkHasNoPro(Integer reportId);

    /**
     * 查询患者开过的所有药
     * @param reportId
     * @param pageNo
     * @param limit
     * @return
     */
    PageInfo<Cashier> selAllByReportIdPage(Integer reportId, Integer pageNo, Integer limit);

    /**
     * 检查药品是否已经存在
     * @param reportId
     * @param mename
     * @return
     */
    Result checkDrupExist(Integer reportId, String mename);

    /**
     * 给病人开药，项目
     * @param c
     */
    void add(Cashier c);

    /**
     * 删除开过的药品，未付款
     * @param id
     */
    void del(Integer id);

    /**
     * 修改开过的信息
     * @param c
     */
    void update(Cashier c);

    /**
     * 查询患者的项目
     * @param reportId
     * @param pageNo
     * @param pageSize
     * @return
     */
    PageInfo<Cashier> selAllByOutReportIdPage(Integer reportId, Integer pageNo, Integer pageSize);

    /**
     * 删除项目
     * @param cashierId
     */
    void delete(Integer cashierId);

    /**
     * 项目添加
     * @param cashierProDTO
     */
    void addPro(AddCashierProDTO cashierProDTO);

    /**
     * 查询项目是够存在
     * @param reportId
     * @param durgName
     * @return
     */
    Result checkProExist(Integer reportId, String durgName);

    /**
     * 修改项目
     * @param cashierProDTO
     */
    void updatePro(AddCashierProDTO cashierProDTO);
}
